Discrete signal synchronization refers to synchronization of time, phase, or amplitude of a received discrete signal with any reference discrete signal. The reference signal can be, for example, a different version of the received discrete signal, a different discrete signal, a clock signal, etc. Discrete signal synchronization is typically used when two incoming signals are to be compared or processed together or processed sequentially. Synchronization ensures that signal features used for processing do not differ because of time lag or lead and that the signal features are processed in a desired logical order. Thus, the accuracy of synchronization determines the quality of the signal processing in a signal.
Typically, to achieve the synchronization in discrete signals, a synchronization pattern is inserted into a signal before processing. The synchronization pattern is extracted after processing and is used to synchronize the processed signal so that data is sampled at the proper time and at proper intervals. However, the insertion of the synchronization pattern typically leads to a change in characteristics of the signal. Further, the signal may undergo changes due to channel effects, downsampling, upsampling and other processing that may occur before the extraction of the synchronization pattern. As a result, the synchronization pattern may not be extracted accurately, resulting in poor synchronization and poor quality of signal processing.